package com.ruoyi.comparison.service;

import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.comparison.domain.TaskResult;
import com.ruoyi.comparison.domain.TaskResultDetail;
import com.ruoyi.comparison.domain.bo.TaskResultBo;
import com.ruoyi.comparison.domain.bo.TaskResultDetailBo;
import com.ruoyi.comparison.domain.vo.TaskResultDetailVo;
import com.ruoyi.comparison.domain.vo.TaskResultVo;

import java.util.Collection;
import java.util.List;

/**
 * 比对结果Service接口
 *
 * @author ruoyi
 * @date 2023-11-08
 */
public interface ITaskResultService {

    /**
     * 查询比对结果
     */
    TaskResultVo queryById(Long id);

    /**
     * 查询比对结果列表
     */
    TableDataInfo<TaskResultVo> queryPageList(TaskResultBo bo, PageQuery pageQuery);

    /**
     * 查询比对结果列表
     */
    List<TaskResultVo> queryList(TaskResultBo bo);

    /**
     * 新增比对结果
     */
    Boolean insertByBo(TaskResultBo bo);

    /**
     * 修改比对结果
     */
    Boolean updateByBo(TaskResultBo bo);

    /**
     * 校验并批量删除比对结果信息
     */
    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);

    void insert(TaskResult taskResult);

    TaskResultVo findById(Long id);

    boolean deleteByResultId(List<Long> ids);

    List<TaskResult> selsectByIds(List<Long> ids);
}
